#ifndef NOSEPIECETOOLBAR_H
#define NOSEPIECETOOLBAR_H

#include <QLabel>
#include <QToolBar>

/**
 * @brief The ToolBarNosepiece class 这个类只是物镜 GUI，不涉及具体的物镜转换操作。
 * 在这里切换物镜时只是发出 changeLens(int oldLens, int newLens) 信号，交由具体的物镜转盘控制类来完成真正的操作。
 */
class ToolBarNosepiece : public QToolBar
{
    Q_OBJECT
public:
    ToolBarNosepiece();
public slots:
    /**
     * @brief setLens 设置当前物镜, 只是更新界面，不涉及具体的物镜转换操作。
     * @param lens
     */
    void setLens(int lens);
    void setLens(int oldLens, int newLens);
signals:
    void changeLens(int oldLens, int newLens);
    void doLensHome();
private:
    void initContent();
    void initConnection();

private slots:
    void lensUpdate(void);
    void lensHomeUI();
private:

    QAction *actionLensHome;
    QAction *actionLens4;// TODO：这里实际上可以定义一个数组 QAction *actionLens[5]
    QAction *actionLens3;// 以后有空了，可以重构一下
    QAction *actionLens2;
    QAction *actionLens1;
    QAction *actionLens0;

    int m_lens;
};

#endif // NOSEPIECETOOLBAR_H
